//package com.jackson0714.passjava.gateway.config;
//
//import org.springframework.cloud.gateway.route.RouteLocator;
//import org.springframework.cloud.gateway.route.builder.RouteLocatorBuilder;
//import org.springframework.context.annotation.Bean;
//import org.springframework.context.annotation.Configuration;
//
///**
//  * @Description:自定义路由配置
//  * @Version v1.0.0
//  * @author zhangpeng148
//  * @date 2022/1/26 17:32
//  */
//@Configuration
//public class GatewayConfig {
//
//    @Bean
//    public RouteLocator customRouteLocator(RouteLocatorBuilder builder) {
//        return builder.routes()
//                //当请求路径为baidu开头 转发到http://www.baidu.com
//                .route("path_route",r-> r.path("/baidu").uri("http://www.baidu.com"))
//                //当主机名为为127.0.0.1:7070 转发到http://www.baidu.com
//                .route("host_route",r-> r.host("http://127.0.0.1:7070").uri("http://www.baidu.com"))
//                //当请求方式为GET 转发到http://www.baidu.com
//                .route("method_route",r-> r.method("GET").uri("http://www.baidu.com"))
//                //当请求参数属性包含test 转发到http://www.baidu.com
//                .route("param_route",r-> r.query("test").uri("http://www.baidu.com"))
//                // 通过host匹配 hystrixfallback.xiyu.cn 的所有请求到 http://127.0.0.1:9528 我的另一个服务项目 并会熔断
////                .route("hystrix_fallback_route", r -> r.path("/gateway/**")
////                        .filters(f -> f.hystrix(c -> c.setName("slowcmd").setFallbackUri("forward:/defaultFallback"))).uri("http://127.0.0.1:7070"))
//                // 其他的同yaml配置差不多
//                .build();
//    }
//
//
//    /**
//     *  redis限流
//     * @return
//     */
////    @Bean
////    public RedisRateLimiter redisRateLimiter() {
////        return new RedisRateLimiter(1, 2);
////    }
//
//    /**
//     *  熔断回调
//     * @return
//     */
////    @RequestMapping("/hystrixfallback")
////    public String hystrixfallback() {
////        return "This is a fallback";
////    }
//}
